Structure from Motion (SfM), Simultaneous Localization and Mapping (SLAM), bundle adjustment, and/or other techniques may be used for three-dimensional scene reconstruction. Three-dimensional scene reconstruction may include determining one or more of a camera location, camera orientation, and/or scene geometry from images. One or more techniques may involve feature point detection within individual images and/or feature point tracking over multiple images. Feature point detection and/or tracking may be accomplished using one or more of Scale-Invariant Feature Transform (SIFT), Speeded Up Robust Features (SURF), Orientated Features From Accelerated Segment Test and Rotated Binary Robust Independent Elementary Features (ORB), Kanade-Lucas-Tomasi (KLT), and/or other techniques for detecting and/or tracking feature points in images. One or more feature point detection and/or tracking processes may return feature point descriptors and/or other information. By way of non-limiting example, a feature point descriptor may comprise information including one or more of a spatial histogram of the image gradients and/or other information, a sum of the Haar wavelet response around feature point, an intensity distribution of pixels within a region surrounding a feature point, and/or other information.
A bundle adjustment process may be used to determine one or more of three-dimensional coordinates describing a scene geometry, parameters of relative motion, parameters of optical characteristics of camera(s) employed to acquire the images, and/or other information.